<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<%@page import="java.util.*"%>
<%@page import="Clases.domain.*"%> 
<%@page import="pos.presentation.*"%>
<html>
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
		<title>Información de Causas</title>
	</head>
	<body>
		<div>
			<%@ include file ="./../cabecera-usuario/cabecera_usuario.jsp" %>
		</div>
		<div>
			<%@ include file ="./../cabecera-usuario/menu.jsp" %>
		</div>
		<%
			
			String barrioNom=request.getParameter("barrio");//Barrio escogido por el usuario
			String zonaNom=request.getParameter("zona");//Zona escogida por el usuario
			Barrio barrio= ReciclajeStore.getInstance().getBarrio(barrioNom);
			
			Iterator itbarrio=barrio.getZonas().iterator();
			Zona zona=null;
			while(itbarrio.hasNext()){
				Zona zonaAux=(Zona)itbarrio.next();
				if(zonaAux.getNombre().equals(zonaNom)){
					zona=zonaAux;
				}
			}
			
			//Ahora cojo el usuario 
			String email= (String)session.getAttribute("session.user");
			String passwd= (String)session.getAttribute("session.passwd");
			
			Usuario usuario=new Usuario(email,passwd,barrioNom,zonaNom);
			//Busco las causas que tiene el usuario y creo nuevas zonas para probar
			List calles1=new LinkedList();//calles que contiene la zona escogida por el usuario
			calles1.add(new String("C/Trajano"));
			calles1.add(new String("C/Molino"));
			calles1.add(new String("C/Virgen de los Reyes"));
			//Zona zona1=new Zona("El cerro",calles1);
			List calles2=new LinkedList();//calles que contiene la zona escogida por el usuario
			calles2.add(new String("C/Trajano"));
			calles2.add(new String("C/Molino"));
			calles2.add(new String("C/Virgen de los Reyes"));
			//Zona zona2=new Zona("La Motilla",calles2);
			Causa causa1=new Causa("Necesitamos 1 contenedor de organico");
			causa1.addNomBarrio(barrioNom);
			causa1.addNomZona(zonaNom);
			Causa causa2=new Causa("Necesitamos 1 contenedor de plastico");
			causa2.addNomBarrio(barrioNom);
			causa2.addNomZona(zonaNom);
			Causa causa3=new Causa("Necesitamos 3 contenedores de medicina");
			causa3.addNomBarrio(barrioNom);
			causa3.addNomZona(zonaNom);
			usuario.addCausa(causa1);
			usuario.addCausa(causa2);
			usuario.addCausa(causa3);
			//barrio.addZona(zona1);estas son 2 zonas que no coinciden con la del usuario
			//barrio.addZona(zona2);
			barrio.addZona(zona);//esta es la zona del usuario
			
		%>		
		<div id="parrafo">
			<p>Esta en el barrio <% out.print(barrio.getNombre()); %>, en la zona <% out.print(zona.getNombre()); %>, que comprende las calles:</p>			
			<div>
				<select multiple size="3" name="callesZonaOption">
				<% 
					Iterator it3=zona.getZonaCalles().iterator();
					while(it3.hasNext()){
						String callejero=(String)it3.next();		
				%>
				<option><% out.print(callejero);%> </option>
				<% 
					}
				%>
				</select>
			</div>
		</div>
		<div id="info_contenedores">
			<div id="caus">
				Informacion de contenedores:
			</div>
			<div id="inf">
				<% 
					List contDeLaZona=zona.getZonaContenedor();
					Iterator it1=contDeLaZona.iterator();
					int vidrio=0;
					List vidrioCalles= new LinkedList();
					int papel=0;
					List papelCalles= new LinkedList();
					int organico=0;
					List organicoCalles= new LinkedList();
					int plastico=0;
					List plasticoCalles= new LinkedList();
					int pilas=0;
					List pilasCalles= new LinkedList();
					int medicinas=0;
					List medicinasCalles= new LinkedList();
					int aceite=0;
					List aceiteCalles= new LinkedList();
					while(it1.hasNext()){
						Contenedor contenedores=(Contenedor)it1.next();
						if(contenedores.getTipo().equals("vidrio")){
							vidrio++;
							vidrioCalles.add(contenedores.getCalle());
						}
						if(contenedores.getTipo().equals("papel")){
							papel++;
							papelCalles.add(contenedores.getCalle());
						}
						if(contenedores.getTipo().equals("organico")){
							organico++;
							organicoCalles.add(contenedores.getCalle());
						}
						if(contenedores.getTipo().equals("plastico")){
							plastico++;
							plasticoCalles.add(contenedores.getCalle());
						}
						if(contenedores.getTipo().equals("pila")){
							pilas++;
							pilasCalles.add(contenedores.getCalle());
						}
						if(contenedores.getTipo().equals("medicina")){
							medicinas++;
							medicinasCalles.add(contenedores.getCalle());
						}
						if(contenedores.getTipo().equals("aceite")){
							aceite++;
							aceiteCalles.add(contenedores.getCalle());
						}
					}

				%>
				
				<label id="label_vidrio" for="vidrio">Vidrio:<% out.print(vidrio); %></label> 
				Contenedores en las calles:  
				<select multiple size="3" name="contenedoresVidrio">   
				<%
					Iterator itCallesVidrio=vidrioCalles.iterator();
					while(itCallesVidrio.hasNext()){
						String calle=(String)itCallesVidrio.next();
				%>
				<option><% out.println(calle);%> </option>
				<%
					}
				%>
				</select>
				<br>
				<label id="label_papel" for="papel">Papel:<% out.print(papel); %></label> 
				Contenedores en las calles:  
				<select multiple size="3" name="contenedoresPapel">   
				<%
					Iterator itCallesPapel=papelCalles.iterator();
					while(itCallesPapel.hasNext()){
						String calle=(String)itCallesPapel.next();
				%>
					<option><% out.println(calle);%> </option>
				<%		
					}							
				%>
				</select><br>
				
				<label id="label_plastico" for="plastico">Plastico:<% out.print(plastico); %></label>
				Contenedores en las calles:
				<select multiple size="3" name="contenedoresPlastico">     
				<%
					Iterator itCallesPlastico=plasticoCalles.iterator();
					while(itCallesPlastico.hasNext()){
						String calle=(String)itCallesPlastico.next();
				%>
				<option><% out.println(calle);%> </option>
				<%	
					}							
				%>
				</select><br>
				
				<label id="label_organico" for="organico">Organico:<% out.print(organico); %></label> 
				Contenedores en las calles: 
				<select multiple size="3" name="contenedoresOrganico">    
				<%
					Iterator itCallesOrganico=organicoCalles.iterator();
					while(itCallesOrganico.hasNext()){
						String calle=(String)itCallesOrganico.next();
				%>
				<option><% out.println(calle);%> </option>
				<%	
					}							
				%>
				</select><br>
				
				<label id="label_pilas" for="pilas">Pilas:<% out.print(pilas); %></label> 
				Contenedores en las calles:     
				<select multiple size="3" name="contenedoresPilas"> 
				<%
					Iterator itCallesPilas=pilasCalles.iterator();
					while(itCallesPilas.hasNext()){
						String calle=(String)itCallesPilas.next();
				%>
				<option><% out.println(calle);%> </option>
				<%	
					}							
				%>
				</select><br>
				
				<label id="label_medicinas" for="medicinas">Medicinas:<% out.print(medicinas); %></label>
				Contenedores en las calles:     
				<select multiple size="3" name="contenedoresMedicinas"> 
				<%
					Iterator itCallesMedicinas=medicinasCalles.iterator();
					while(itCallesMedicinas.hasNext()){
						String calle=(String)itCallesMedicinas.next();
				%>
				<option><% out.println(calle);%> </option>
				<%
					}							
				%>
				</select><br>
				
				<label id="label_aceites" for="aceites">Aceites:<% out.print(aceite); %></label>
				Contenedores en las calles:    
				<select multiple size="3" name="contenedoresAceites"> 
				<%
					Iterator itCallesAceite=aceiteCalles.iterator();
					while(itCallesAceite.hasNext()){
						String calle=(String)itCallesAceite.next();
				%>
				<option><% out.println(calle);%> </option>
				<%
					}							
				%>
				</select><br>
				
			</div>
			<div id="caus">
				Causas para el barrio <% out.print(barrioNom+" y en la zona de "+zonaNom);%>:
			</div>
			<div id="caus">
				Sin tu apoyo:
			</div>
			<div id="causaSinApoyo">
				
				<%
				//TODO tengo que tener el barrio en objeto para iterar sobre el
				Iterator itCausasDESC = zona.getZonaCausas().iterator();//itero sobre todas las causas que tiene el barrio
				while(itCausasDESC.hasNext()){
					Causa auxCausa=(Causa)itCausasDESC.next();
					//if(!usuario.tieneCausa(barrio.getNombre(),zona.getNombre(),auxCausa.getCausaDescripcion())){
						//si no coincide el nombre del barrio, zona y la descripcion , es que el usuario no tiene esa causa
						%>
						<a href="FrontController?res=./archivos/causa/apoyo_causa.jsp?barrio=<%= barrioNom%>&zona=<%= zonaNom%>&desc=<%= auxCausa.getCausaDescripcion()%>&numapoyos=<%= auxCausa.getCausaNumApoyos()%>" title="Apoyar esta causa">
						<%
							out.print(auxCausa.getCausaDescripcion()+". Tiene "+auxCausa.getCausaNumApoyos()+" apoyos.<br>");
						%>
						</a>
						<%
						
					}
				
				%>
				
			</div>
			<div id="causaConApoyo">
				Con tu apoyo:
			</div>
			<div id="tu_apoyo">
				<%
				//TODO tengo que tener el barrio en objeto para iterar sobre el
				Iterator itCausas = zona.getZonaCausas().iterator();
				while(itCausas.hasNext()){
					Causa auxCausa=(Causa)itCausas.next();
					//if(usuario.tieneCausa(barrioNom,zonaNom,auxCausa.getCausaDescripcion())){
						out.print(auxCausa.getCausaDescripcion()+". Tiene "+auxCausa.getCausaNumApoyos()+" apoyos.<br>");
					}
				//}
				//}
				%>
			</div>
		</div>
		<div id="crear_causa">
			//<a href="FrontController?res=./archivos/causa/crear_causa.jsp?barrio=<%out.print(barrioNom);%>&zona=<%out.print(zonaNom); %>" title="Crear una causa">
				Crear una nueva Causa
			</a>
		</div>
	</body>
</html>